package org.wdcode.back.tag.ui;

import javax.servlet.jsp.JspException;

import org.wdcode.common.util.CommonUtil;

/**
 * 扩展struts2 HiddenTag
 * @author WD
 * @since JDK6
 * @version 1.0 2010-03-23
 */
public class HiddenTag extends org.apache.struts2.views.jsp.ui.HiddenTag {
	// 序列化ID
	private static final long	serialVersionUID	= 7816450255518898447L;

	/**
	 * 重写方法
	 */
	@Override
	protected void populateParams() {
		// 设置ID
		id = CommonUtil.isEmpty(id) ? "%{#temHidden.get('id')}" : id;
		// 设置name
		name = CommonUtil.isEmpty(name) ? "%{#temHidden.get('name')}" : name;
		// 设置value
		value = CommonUtil.isEmpty(value) ? getStack().findString("#temHidden.get('value')") : value;
		// 调用父方法
		super.populateParams();
	}

	/**
	 * 标签结束
	 */
	@Override
	public int doEndTag() throws JspException {
		// 获得标签结束结果
		int result = super.doEndTag();
		// 清除字段
		clear();
		// 返回结果
		return result;
	}

	/**
	 * 清除字段信息
	 */
	private void clear() {
		id = null;
		name = null;
		value = null;
	}
}
